package com.arron.strategy;

import org.w3c.dom.Document;
import org.w3c.dom.Node;
import org.w3c.dom.NodeList;

import javax.xml.parsers.DocumentBuilder;
import javax.xml.parsers.DocumentBuilderFactory;
import java.io.File;

public class XMLUtil {
    public static Object getBean(){
        //创建文档对象
        try {
            DocumentBuilderFactory dFactory=DocumentBuilderFactory.newInstance();
            DocumentBuilder builder =dFactory.newDocumentBuilder();
            Document doc =builder.parse(new File("src/com/arron/strategy/config.xml")) ;
            //获取包含类名的文本节点
            NodeList bnl=doc.getElementsByTagName("className");
            Node classNode = bnl.item(0).getFirstChild();
            String cName = classNode.getNodeValue();
            //通过类名生成实例对象并将其返回
            Class c =Class.forName(cName);
            Object obj =c.newInstance();
            return obj;
        } catch (Exception e){
            e.printStackTrace();
            return null;
        }
    }
}